if (!("finalizeConstruction" in ViewPU.prototype)) {
    Reflect.set(ViewPU.prototype, "finalizeConstruction", () => { });
}
export class ScanTopLeftRect extends ViewPU {
    constructor(a15, b15, c15, d15 = -1, e15 = undefined, f15) {
        super(a15, c15, d15, f15);
        if (typeof e15 === "function") {
            this.paramsGenerator_ = e15;
        }
        this.__cornerLineWidth = new SynchedPropertySimpleOneWayPU(b15.cornerLineWidth, this, "cornerLineWidth");
        this.__cornerLineLength = new SynchedPropertySimpleOneWayPU(b15.cornerLineLength, this, "cornerLineLength");
        this.__cornerLineColor = new SynchedPropertyObjectOneWayPU(b15.cornerLineColor, this, "cornerLineColor");
        this.setInitiallyProvidedValue(b15);
        this.finalizeConstruction();
    }
    setInitiallyProvidedValue(z14) {
        if (z14.cornerLineWidth === undefined) {
            this.__cornerLineWidth.set(4);
        }
        if (z14.cornerLineLength === undefined) {
            this.__cornerLineLength.set(30);
        }
        if (z14.cornerLineColor === undefined) {
            this.__cornerLineColor.set(Color.White);
        }
    }
    updateStateVars(y14) {
        this.__cornerLineWidth.reset(y14.cornerLineWidth);
        this.__cornerLineLength.reset(y14.cornerLineLength);
        this.__cornerLineColor.reset(y14.cornerLineColor);
    }
    purgeVariableDependenciesOnElmtId(x14) {
        this.__cornerLineWidth.purgeDependencyOnElmtId(x14);
        this.__cornerLineLength.purgeDependencyOnElmtId(x14);
        this.__cornerLineColor.purgeDependencyOnElmtId(x14);
    }
    aboutToBeDeleted() {
        this.__cornerLineWidth.aboutToBeDeleted();
        this.__cornerLineLength.aboutToBeDeleted();
        this.__cornerLineColor.aboutToBeDeleted();
        SubscriberManager.Get().delete(this.id__());
        this.aboutToBeDeletedInternal();
    }
    get cornerLineWidth() {
        return this.__cornerLineWidth.get();
    }
    set cornerLineWidth(w14) {
        this.__cornerLineWidth.set(w14);
    }
    get cornerLineLength() {
        return this.__cornerLineLength.get();
    }
    set cornerLineLength(v14) {
        this.__cornerLineLength.set(v14);
    }
    get cornerLineColor() {
        return this.__cornerLineColor.get();
    }
    set cornerLineColor(u14) {
        this.__cornerLineColor.set(u14);
    }
    initialRender() {
        this.observeComponentCreation2((s14, t14) => {
            Column.create();
            Column.alignItems(HorizontalAlign.Start);
            Column.backgroundColor(Color.Transparent);
        }, Column);
        this.observeComponentCreation2((q14, r14) => {
            Row.create();
            Row.width(this.cornerLineLength);
            Row.height(this.cornerLineWidth);
            Row.backgroundColor(ObservedObject.GetRawObject(this.cornerLineColor));
        }, Row);
        Row.pop();
        this.observeComponentCreation2((o14, p14) => {
            Row.create();
            Row.width(this.cornerLineWidth);
            Row.height(this.cornerLineLength - this.cornerLineWidth);
            Row.backgroundColor(ObservedObject.GetRawObject(this.cornerLineColor));
        }, Row);
        Row.pop();
        Column.pop();
    }
    rerender() {
        this.updateDirtyElements();
    }
}
export class ScanTopRightRect extends ViewPU {
    constructor(i14, j14, k14, l14 = -1, m14 = undefined, n14) {
        super(i14, k14, l14, n14);
        if (typeof m14 === "function") {
            this.paramsGenerator_ = m14;
        }
        this.__cornerLineWidth = new SynchedPropertySimpleOneWayPU(j14.cornerLineWidth, this, "cornerLineWidth");
        this.__cornerLineLength = new SynchedPropertySimpleOneWayPU(j14.cornerLineLength, this, "cornerLineLength");
        this.__cornerLineColor = new SynchedPropertyObjectOneWayPU(j14.cornerLineColor, this, "cornerLineColor");
        this.setInitiallyProvidedValue(j14);
        this.finalizeConstruction();
    }
    setInitiallyProvidedValue(h14) {
        if (h14.cornerLineWidth === undefined) {
            this.__cornerLineWidth.set(4);
        }
        if (h14.cornerLineLength === undefined) {
            this.__cornerLineLength.set(30);
        }
        if (h14.cornerLineColor === undefined) {
            this.__cornerLineColor.set(Color.White);
        }
    }
    updateStateVars(g14) {
        this.__cornerLineWidth.reset(g14.cornerLineWidth);
        this.__cornerLineLength.reset(g14.cornerLineLength);
        this.__cornerLineColor.reset(g14.cornerLineColor);
    }
    purgeVariableDependenciesOnElmtId(f14) {
        this.__cornerLineWidth.purgeDependencyOnElmtId(f14);
        this.__cornerLineLength.purgeDependencyOnElmtId(f14);
        this.__cornerLineColor.purgeDependencyOnElmtId(f14);
    }
    aboutToBeDeleted() {
        this.__cornerLineWidth.aboutToBeDeleted();
        this.__cornerLineLength.aboutToBeDeleted();
        this.__cornerLineColor.aboutToBeDeleted();
        SubscriberManager.Get().delete(this.id__());
        this.aboutToBeDeletedInternal();
    }
    get cornerLineWidth() {
        return this.__cornerLineWidth.get();
    }
    set cornerLineWidth(e14) {
        this.__cornerLineWidth.set(e14);
    }
    get cornerLineLength() {
        return this.__cornerLineLength.get();
    }
    set cornerLineLength(d14) {
        this.__cornerLineLength.set(d14);
    }
    get cornerLineColor() {
        return this.__cornerLineColor.get();
    }
    set cornerLineColor(c14) {
        this.__cornerLineColor.set(c14);
    }
    initialRender() {
        this.observeComponentCreation2((a14, b14) => {
            Column.create();
            Column.alignItems(HorizontalAlign.End);
            Column.backgroundColor(Color.Transparent);
        }, Column);
        this.observeComponentCreation2((y13, z13) => {
            Row.create();
            Row.width(this.cornerLineLength);
            Row.height(this.cornerLineWidth);
            Row.backgroundColor(ObservedObject.GetRawObject(this.cornerLineColor));
        }, Row);
        Row.pop();
        this.observeComponentCreation2((w13, x13) => {
            Row.create();
            Row.width(this.cornerLineWidth);
            Row.height(this.cornerLineLength - this.cornerLineWidth);
            Row.backgroundColor(ObservedObject.GetRawObject(this.cornerLineColor));
        }, Row);
        Row.pop();
        Column.pop();
    }
    rerender() {
        this.updateDirtyElements();
    }
}
export class ScanBottomLeftRect extends ViewPU {
    constructor(q13, r13, s13, t13 = -1, u13 = undefined, v13) {
        super(q13, s13, t13, v13);
        if (typeof u13 === "function") {
            this.paramsGenerator_ = u13;
        }
        this.__cornerLineWidth = new SynchedPropertySimpleOneWayPU(r13.cornerLineWidth, this, "cornerLineWidth");
        this.__cornerLineLength = new SynchedPropertySimpleOneWayPU(r13.cornerLineLength, this, "cornerLineLength");
        this.__cornerLineColor = new SynchedPropertyObjectOneWayPU(r13.cornerLineColor, this, "cornerLineColor");
        this.setInitiallyProvidedValue(r13);
        this.finalizeConstruction();
    }
    setInitiallyProvidedValue(p13) {
        if (p13.cornerLineWidth === undefined) {
            this.__cornerLineWidth.set(4);
        }
        if (p13.cornerLineLength === undefined) {
            this.__cornerLineLength.set(30);
        }
        if (p13.cornerLineColor === undefined) {
            this.__cornerLineColor.set(Color.White);
        }
    }
    updateStateVars(o13) {
        this.__cornerLineWidth.reset(o13.cornerLineWidth);
        this.__cornerLineLength.reset(o13.cornerLineLength);
        this.__cornerLineColor.reset(o13.cornerLineColor);
    }
    purgeVariableDependenciesOnElmtId(n13) {
        this.__cornerLineWidth.purgeDependencyOnElmtId(n13);
        this.__cornerLineLength.purgeDependencyOnElmtId(n13);
        this.__cornerLineColor.purgeDependencyOnElmtId(n13);
    }
    aboutToBeDeleted() {
        this.__cornerLineWidth.aboutToBeDeleted();
        this.__cornerLineLength.aboutToBeDeleted();
        this.__cornerLineColor.aboutToBeDeleted();
        SubscriberManager.Get().delete(this.id__());
        this.aboutToBeDeletedInternal();
    }
    get cornerLineWidth() {
        return this.__cornerLineWidth.get();
    }
    set cornerLineWidth(m13) {
        this.__cornerLineWidth.set(m13);
    }
    get cornerLineLength() {
        return this.__cornerLineLength.get();
    }
    set cornerLineLength(l13) {
        this.__cornerLineLength.set(l13);
    }
    get cornerLineColor() {
        return this.__cornerLineColor.get();
    }
    set cornerLineColor(k13) {
        this.__cornerLineColor.set(k13);
    }
    initialRender() {
        this.observeComponentCreation2((i13, j13) => {
            Column.create();
            Column.alignItems(HorizontalAlign.Start);
            Column.backgroundColor(Color.Transparent);
        }, Column);
        this.observeComponentCreation2((g13, h13) => {
            Row.create();
            Row.width(this.cornerLineWidth);
            Row.height(this.cornerLineLength - this.cornerLineWidth);
            Row.backgroundColor(ObservedObject.GetRawObject(this.cornerLineColor));
        }, Row);
        Row.pop();
        this.observeComponentCreation2((e13, f13) => {
            Row.create();
            Row.width(this.cornerLineLength);
            Row.height(this.cornerLineWidth);
            Row.backgroundColor(ObservedObject.GetRawObject(this.cornerLineColor));
        }, Row);
        Row.pop();
        Column.pop();
    }
    rerender() {
        this.updateDirtyElements();
    }
}
export class ScanBottomRightRect extends ViewPU {
    constructor(y12, z12, a13, b13 = -1, c13 = undefined, d13) {
        super(y12, a13, b13, d13);
        if (typeof c13 === "function") {
            this.paramsGenerator_ = c13;
        }
        this.__cornerLineWidth = new SynchedPropertySimpleOneWayPU(z12.cornerLineWidth, this, "cornerLineWidth");
        this.__cornerLineLength = new SynchedPropertySimpleOneWayPU(z12.cornerLineLength, this, "cornerLineLength");
        this.__cornerLineColor = new SynchedPropertyObjectOneWayPU(z12.cornerLineColor, this, "cornerLineColor");
        this.setInitiallyProvidedValue(z12);
        this.finalizeConstruction();
    }
    setInitiallyProvidedValue(x12) {
        if (x12.cornerLineWidth === undefined) {
            this.__cornerLineWidth.set(4);
        }
        if (x12.cornerLineLength === undefined) {
            this.__cornerLineLength.set(30);
        }
        if (x12.cornerLineColor === undefined) {
            this.__cornerLineColor.set(Color.White);
        }
    }
    updateStateVars(w12) {
        this.__cornerLineWidth.reset(w12.cornerLineWidth);
        this.__cornerLineLength.reset(w12.cornerLineLength);
        this.__cornerLineColor.reset(w12.cornerLineColor);
    }
    purgeVariableDependenciesOnElmtId(v12) {
        this.__cornerLineWidth.purgeDependencyOnElmtId(v12);
        this.__cornerLineLength.purgeDependencyOnElmtId(v12);
        this.__cornerLineColor.purgeDependencyOnElmtId(v12);
    }
    aboutToBeDeleted() {
        this.__cornerLineWidth.aboutToBeDeleted();
        this.__cornerLineLength.aboutToBeDeleted();
        this.__cornerLineColor.aboutToBeDeleted();
        SubscriberManager.Get().delete(this.id__());
        this.aboutToBeDeletedInternal();
    }
    get cornerLineWidth() {
        return this.__cornerLineWidth.get();
    }
    set cornerLineWidth(u12) {
        this.__cornerLineWidth.set(u12);
    }
    get cornerLineLength() {
        return this.__cornerLineLength.get();
    }
    set cornerLineLength(t12) {
        this.__cornerLineLength.set(t12);
    }
    get cornerLineColor() {
        return this.__cornerLineColor.get();
    }
    set cornerLineColor(s12) {
        this.__cornerLineColor.set(s12);
    }
    initialRender() {
        this.observeComponentCreation2((q12, r12) => {
            Column.create();
            Column.alignItems(HorizontalAlign.End);
            Column.backgroundColor(Color.Transparent);
        }, Column);
        this.observeComponentCreation2((o12, p12) => {
            Row.create();
            Row.width(this.cornerLineWidth);
            Row.height(this.cornerLineLength - this.cornerLineWidth);
            Row.backgroundColor(ObservedObject.GetRawObject(this.cornerLineColor));
        }, Row);
        Row.pop();
        this.observeComponentCreation2((m12, n12) => {
            Row.create();
            Row.width(this.cornerLineLength);
            Row.height(this.cornerLineWidth);
            Row.backgroundColor(ObservedObject.GetRawObject(this.cornerLineColor));
        }, Row);
        Row.pop();
        Column.pop();
    }
    rerender() {
        this.updateDirtyElements();
    }
}
